package cn.kgc.dao.mapper;

import cn.kgc.pojo.ItripComment;
import cn.kgc.pojo.ItripHotel;
import cn.kgc.pojo.ItripHotelRoom;
import cn.kgc.pojo.ItripImage;
import cn.kgc.vo.CommentListVo;
import cn.kgc.vo.HotelScore;
import cn.kgc.vo.ItripCommentPage;
import cn.kgc.vo.QueryComment;

import java.util.List;

public interface ItripCommentMapper {
    int deleteByPrimaryKey(Long id);

    /**
     * 增加酒店评论
     * @param record
     * @return
     */
    int insert(ItripComment record);


    /**
     * 当前评论是否有图片数量
     * @param id
     * @return
     */
    long getIsHavingImg(long id);

    /**
     * 当前评论有待改善
     * @param id
     * @return
     */
    long getisOkNO(long id);

    /**
     * 获取当前评论值得推荐数量
     * @param id
     * @return
     */
    long getisOkYES(long id);

    /**
     * 获取当前评论数量
     * @param id
     * @return
     */
    long getAllCount(long id);

    /**
     * 评论列表
     * @param itripCommentPage
     * @return
     */
    List<CommentListVo> selectCommentList(ItripCommentPage itripCommentPage);

    /**
     * 评论总数
     * @param queryComment
     * @return
     */
    long selectCommentCount(QueryComment queryComment);

    /**
     * 评分列表
     * @param parseLong
     * @return
     */
    HotelScore getHotelScore(long parseLong);

    /**
     * 获取酒店信息
     * @param parseLong
     * @return
     */
    ItripHotel queryHotelDetails(long parseLong);

    /**
     * 酒店设施
     * @param parseLong
     * @return
     */
    ItripHotel queryHotelFacilities(long parseLong);

    /**
     * 酒店政策
     * @param parseLong
     * @return
     */
    ItripHotel queryHotelPolicy(long parseLong);

    /**
     * 酒店图片
     * @param parseLong
     * @return
     */
    List<ItripImage> getCommentImg(long parseLong);

    /**
     * 酒店房间
     * @param itripHotelRoom
     * @return
     */
    List<ItripHotelRoom> selectByQuery(ItripHotelRoom itripHotelRoom);

    /**
     * 点评
     * @return
     */
    long getCommentID();
}